package models

//func SubMoneyAndItem(roleID int32, coin int64, itemID, itemNumber int32) (*pb.Money, *pb.Item, error) {
//
//	var money = moneyC.GetMoney(roleID)
//	if money.Coin < coin {
//		return money, nil, errors.CoinNotEnoughError
//	}
//
//	item, err := itemC.GetByItemID(roleID, itemID)
//	if err != nil {
//		return money, item, err
//	}
//
//	if item.Number < itemNumber {
//		return money, nil, errors.ItemNotEnoughError
//	}
//
//	var group errgroup.Group
//
//	group.Go(func() (err error) {
//
//		item, err = itemC.SubItem(roleID, pb.RawItem{ItemID: itemID, Number: itemNumber})
//		return err
//	})
//
//	group.Go(func() error {
//		money, err = moneyC.SubCoin(roleID, coin)
//		return err
//	})
//
//	return money, item, group.Wait()
//}
